// Copyright (C) 2023 即时通讯网(52im.net) & Jack Jiang.
// The RainbowChat Project. All rights reserved.
// 
// 【本产品为著作权产品，合法授权后请放心使用，禁止外传！】
// 【本次授权给：<北京小羊驼科技有限公司>，授权编号：<NT231212144350>，代码指纹：<A.702363430.550>，技术对接人微信：<ID: wxid_wbyootvkdcgj22>】
// 【授权寄送：<收件：苏先生、地址：北京市大兴区北京密码西区6号楼1单元301、电话：18613885610、邮箱：bd@huiyuanxiang-inc.com>】
// 
// 【本系列产品在国家版权局的著作权登记信息如下】：
// 1）国家版权局登记名(简称)和权证号：RainbowChat    （证书号：软著登字第1220494号、登记号：2016SR041877）
// 2）国家版权局登记名(简称)和权证号：RainbowChat-Web（证书号：软著登字第3743440号、登记号：2019SR0322683）
// 3）国家版权局登记名(简称)和权证号：RainbowAV      （证书号：软著登字第2262004号、登记号：2017SR676720）
// 4）国家版权局登记名(简称)和权证号：MobileIMSDK-Web（证书号：软著登字第2262073号、登记号：2017SR676789）
// 5）国家版权局登记名(简称)和权证号：MobileIMSDK    （证书号：软著登字第1220581号、登记号：2016SR041964）
// * 著作权所有人：江顺/苏州网际时代信息科技有限公司
// 
// 【违法或违规使用投诉和举报方式】：
// 联系邮件：jack.jiang@52im.net
// 联系微信：hellojackjiang
// 联系QQ号：413980957
// 授权说明：http://www.52im.net/thread-1115-1-1.html
// 官方社区：http://www.52im.net
//package com.x52im.rainbowchat.logic.chat_root.utils;
//
//import android.app.Activity;
//import android.content.Context;
//import android.graphics.Bitmap;
//
//import MyApplication;
//import com.x52im.rainbowchat.http.logic.dto.RosterElementEntity;
//import com.x52im.rainbowchat.logic.more.avatar.ShowUserAvatar;
//
///**
// * 聊天时本地头像获取的包装实现类.
// *
// * <p>
// * 之所以有本类的存在，是为了在像聊天界面这样在界面之内重复
// * 大量使用的情况下能共享Bitmap对象，且提供方便刷新和释放内存的方法.
// *
// * <p>
// * 说明：本类与{@link AvatarGetWrapper}是基于同样的理论实现，只是本类仅用于获取本地用户头像时
// * 使用，且使用场景与{@link AvatarGetWrapper}类似.不重用{@link AvatarGetWrapper}而另写本类
// * 的原因是在存在有限代码冗余的情况下，能提供使用者最大的继承、重用的便利性，也是值得的.
// *
// * @author Jack Jiang(http://www.52im.net/space-uid-1.html)
// * @since 2.4
// * @see AvatarGetWrapper
// */
//public class AvatarGetWrapperJustLocal
//{
//	private Context context = null;
//	protected Bitmap localAvatarBitmap = null;
//
//	public AvatarGetWrapperJustLocal(Context context)
//	{
//		this.context = context;
//	}
//
//	public void refreshAvatar(boolean needTryGerAvatarFromServer)
//	{
//		RosterElementEntity localRee = MyApplication.getInstance(context)
//				.getIMClientManager().getLocalUserInfo();
//		// google分析报告过一次本对象为null的情况导致的空指针，但此对象不应为null才对，因为程序会首先报证本对象不为
//		// null，否则是不会登陆成功的。估计还是APP的生命周期有问题导致Application里的值被清空？或者它就是2个实例？
//		if(localRee != null)
//			// 读取本地用户头像
//			tryToGetAvatar(localRee.getUser_uid(), needTryGerAvatarFromServer);
//	}
//
//	/**
//	 * 尝试获取用户头像.
//	 *
//	 * @param destToLocal true表示尝试将获取到的bitmap设置到localAvatar上，否则设置到friendAvatar上
//	 * @param uid 要获取头像人员的uid
//	 */
//	private void tryToGetAvatar(String uid
//			, boolean needTryGerAvatarFromServer)
//	{
//		new ShowUserAvatar((Activity)context
//				, uid
//				, null
//				, needTryGerAvatarFromServer
//				, 139 , 139 // 此类中的头像用于聊天界面中的双方头像，大小参考：chatting_list_view_bluetooth_man.png
//				)
//		{
//			/**
//			 * 更新Bitmap对象.
//			 * <p>默认实现是将Bitmap对象更新到UI组件上（如果UI组件存在的话）.
//			 *
//			 * @param fromNet
//			 */
//			protected void avatarUpdate(Bitmap cachedAvatar)
//			{
//				localAvatarBitmap = cachedAvatar;
//				localAvatarGot(localAvatarBitmap);
//			}
//		}.showCahedAvatar();
//	}
//
//	protected void localAvatarGot(Bitmap localAvatarBitmap)
//	{
//		// default do nothing
//	}
//
//	/**
//	 * 保证头像Bitmap对象被释放！
//	 */
//	public void releaseAvatarBitmap()
//	{
//		if(localAvatarBitmap != null && !localAvatarBitmap.isRecycled())
//			localAvatarBitmap.recycle();
//	}
//
//	public Bitmap getLocalAvatarBitmap()
//	{
//		return localAvatarBitmap;
//	}
//}
